<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN">
<html>
<head>
<title>Using the Library</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <meta name="generator" content="Doc-O-Matic" />
    <meta http-equiv="Content-Style-Type" content="text/css" />
    <link rel="STYLESHEET" href="default.css" type="text/css" />

<script type="text/javascript" src="scripts.js"></script>
</head>
<body class="Element700" onload="onBodyLoadEx('frames.html', 'topic', '00645.html');" onmousedown="onBodyMouseDown();">

<!-- Begin Popups -->

<!-- End Popups -->

<!-- Begin Page Header -->
<div class="Element710" id="areafixed">
<div class="Element94">
<a href="00626.html" target="topic">OSAL Library Help</a> &gt; <a href="00645.html" target="topic">Using the Library</a></div>
<div class="Element92">
<table width="100%" cellspacing="0" cellpadding="0">
<tr><td width="25%">
<div class="Element1">
MPLAB Harmony Core Help</div>
</td><td width="25%">
<div class="Element2">
<a href="contents.html" target="tocidx">Contents</a> | <a href="00007.html" target="topic">Home</a></div>
</td><td width="25%">
<div class="Element90">
<a href="00634.html" target="topic">Previous</a> | <a href="00626.html" target="topic">Up</a> | <a href="00627.html" target="topic">Next</a></div>
</td><td width="25%">
<div class="Element96">
<a href="mailto:docerrors@microchip.com&subject=MPLAB Harmony Documentation Feedback (Topic ID: OSAL Using the Library Topic Title: Using the Library)&body=Thank you for your feedback! Please include a description of your feedback, and indicate whether you are reporting an an error in the documentation or an enhancement.">Documentation Feedback</a><br> <a href="http://support.microchip.com" target="_blank">Microchip Support</a></div>
</td></tr></table><div class="Element5">
Using the Library</div>
</div>
</div>

<!-- End Page Header -->

<!-- Begin Client Area -->
<div class="Element720" id="areascroll">
<div class="Element721">

<!-- Begin Page Content -->
<a name="PageContent"></a><div class="Element58">
<a name="4465736372697074696F6E"></a><div class="Element11">
<div class="Element10">
<p class="Element10">
<strong>Interface Header File</strong>: <span class="Element146">osal.h</span> </p><p class="Element10" style="text-align: justify;">
The interface to the OSAL Library is defined in the osal.h header file. Any C language source (.c) file that uses the OSAL System Service library should include osal.h.</p><p class="Element10">
<strong>Library File</strong>: <span class="Element146">osal_&lt;vendor-specified RTOS name&gt;.c </span>(i.e., FreeRTOS, etc.) </p><p class="Element10" style="text-align: justify;">
The OSAL Library consists of a basic implementation and individual ports of the OSAL to target operating systems. The basic implementation is used when any of the Third-Party Library RTOS is not instantiated.&nbsp;</p>
<p class="Element10" style="text-align: justify;">
When an RTOS is being used (i.e. if any of Third-Party Library RTOS is instantiated, Ex: FreeRTOS) then an external implementation file which provides the required interface wrappers should be added to the project. For instance for the FreeRTOS operating system the file osal_freertos.c should be added, while for the Micri<span style="color: #000000">µ</span>m <span style="color: #000000">µC/OS</span><span style="color: #0000FF">-</span>III operating system the file osal_ucos3.c should be added.&nbsp;</p>
<p class="Element10" style="text-align: justify;">
The basic implementation and some generic ports are provided with the Library, however, it is the responsibility of third-party vendors to supply an implementation file for operating systems that are not already supported.</p></div>
</div>
<a name="546F70696373"></a><div class="Element14">
Topics</div>
<div class="Element11">
<div class="Element10">
<div class="Element212">
<div class="TableDiv">
<table cellspacing="0" class="Table0">
<tr>
<td class="Element200" valign="top" width="35%">
<div class="Element201">
Name&nbsp;</div></td><td class="Element204" valign="top" width="65%">
<div class="Element205">
Description&nbsp;</div></td></tr><tr>
<td class="Element202" valign="top" width="35%">
<div class="Element203">
<a href="00627.html" target="topic">Abstraction Model</a>&nbsp;</div></td><td class="Element206" valign="top" width="65%">
<div class="Element207">
</p><p class="Element207" style="text-align: justify;">
The OSAL Library provides a predefined set of functions and types that match common synchronization and communication services that an RTOS will typically provide. It is designed to be a lightweight abstraction model and deliberately excludes the much broader depth and breadth of services that a fully fledged RTOS provides. As such the interface defines only those core functions necessary for the MPLAB Harmony Drivers and middleware to operate in a multi-threaded environment.</p><p class="Element207">
&nbsp;</div></td></tr><tr>
<td class="Element202" valign="top" width="35%">
<div class="Element203">
<a href="00636.html" target="topic">Library Overview</a>&nbsp;</div></td><td class="Element206" valign="top" width="65%">
<div class="Element207">
This section provides an overview of the OSAL Library.&nbsp;</div></td></tr><tr>
<td class="Element202" valign="top" width="35%">
<div class="Element203">
<a href="00633.html" target="topic">How the Library Works</a>&nbsp;</div></td><td class="Element206" valign="top" width="65%">
<div class="Element207">
This section provides information on how the OSAL Library works.&nbsp;</div></td></tr></table></div></div>
</div>
</div>
</div>
<!-- End Page Content -->

<!-- Begin Page Footer -->
<div class="Element95">
<a href="00626.html" target="topic">OSAL Library Help</a> &gt; <a href="00645.html" target="topic">Using the Library</a></div>
<div class="Element93">
<table width="100%" cellspacing="0" cellpadding="0">
<tr><td width="25%">
<div class="Element3">
MPLAB Harmony Core Help</div>
</td><td width="25%">
<div class="Element4">
<a href="contents.html" target="tocidx">Contents</a> | <a href="00007.html" target="topic">Home</a></div>
</td><td width="25%">
<div class="Element91">
<a href="00634.html" target="topic">Previous</a> | <a href="00626.html" target="topic">Up</a> | <a href="00627.html" target="topic">Next</a></div>
</td><td width="25%">
<div class="Element97">
<a href="mailto:docerrors@microchip.com&subject=MPLAB Harmony Documentation Feedback (Topic ID: OSAL Using the Library Topic Title: Using the Library)&body=Thank you for your feedback! Please include a description of your feedback, and indicate whether you are reporting an an error in the documentation or an enhancement.">Documentation Feedback</a><br> <a href="http://support.microchip.com" target="_blank">Microchip Support</a></div>
</td></tr></table></div>

<!-- End Page Footer -->
</div>
</div>

<!-- End Client Area -->
</body></html>